Relatório de eventos do SCSI

Nós podem notificar seus hosts de eventos para comandos SCSI emitidos.

status SCSI

Alguns eventos são parte da arquitetura SCSI e são tratadas pelo aplicativo host ou drivers de dispositivo sem relatar um evento. Alguns eventos, como eventos de E/S de leitura e gravação e eventos associados à perda de nós ou perda de acesso aos dispositivos de backend, fazem com que a E/S do aplicativo falhe. Para ajudar a resolver esses eventos, comandos SCSI são retornados com o status Check Condition e um identificador de evento 32-bit é incluído com as informações de detecção. O identificador se refere a um evento específico no log de eventos.

Se o aplicativo host ou driver de dispositivo captura e armazena essas informações, você pode relacionar a falha do aplicativo para o log de eventos.

Tabela 1 descreve o status SCSI e os códigos que são retornados pelos nós.

Tabela 1. status SCSI
Status Código Descrição
Bom 00h O comando foi bem-sucedido.
Condição de verificação 02h O comando falhou e dados de detecção estão disponíveis.
Condição atendida 04h N/D
Ocupado 08h Uma condição Auto-Contingent Allegiance existe e o comando especificado NACA=0.
Intermediário 10h N/D
Intermediário - condição atendida 14h N/D
Conflito de reserva 18h Retornado como especificado em SPC2 e SAM-2 onde uma reserva ou condição de reserva persistente existe.
Conjunto de tarefas completo 28h O inicializador tem pelo menos uma tarefa enfileirada para esse LUN nessa porta.
ACA ativo 30h Esse código é relatado como especificado no SAM-2.
Tarefa interrompida 40h Esse código será retornado se TAS estiver configurado no controle de modo de página 0Ch. O nó possui uma configuração padrão de TAS=0, que não pode ser alterado; portanto, o nó não relata essa status.

Sentido SCSI

Nós notificam os hosts de eventos em comandos SCSI. O Tabela 2 define as chaves de detecção do SCSI, os códigos e os qualificadores que são retornados pelos nós.

Tabela 2. Qualificadores, códigos e chaves do SCSI Sense
Chave Código Qualificador Definição Descrição
2h 04h 01h Não está pronto. A unidade lógica está no processo de se tornar pronta. O nó perdeu o sistema de vista e não pode executar operações de E/S. O sense adicional não possui informações complementares.
2h 04h 0Ch Não está pronto. A porta de destino está no estado de indisponível. As seguintes condições são possíveis:
  • O nó perdeu o sistema de vista e não pode executar operações de E/S. O sense adicional não possui informações complementares.
  • O nó está em contato com o sistema, mas não pode executar operações de E/S para a unidade lógica especificada, devido à perda de conectividade com o controlador de backend ou a algum problema algorítmico. Esse sense é retornado para os volumes offline.
3h 00h 00h Evento de mídia Esse é apenas retornado para ler ou gravar as E/Ss. A E/S sofreu um evento em um LBA específico dentro de seu escopo. O local do evento é relatado dentro dos dados de detecção. A detecção adicional também inclui um código de razão que se refere ao evento para a entrada de log de eventos correspondente. Por exemplo, um evento de controlador RAID ou um evento de mídia migrado.
4h 08h 00h Evento de hardware. Um comando para falha na comunicação da unidade lógica ocorreu. A E/S sofreu um evento que está associado a um evento de E/S que é retornada por um controlador RAID. A detecção adicional inclui um código de razão que aponta para os dados de detecção que são retornados pelo controlador. Esse é apenas retornado para comandos do tipo de E/S. Este evento também é retornado a partir de volumes de destino FlashCopy no estado preparado e de preparação.
5h 25h 00h Pedido inválido. A unidade lógica não é suportada. A unidade lógica não existe ou não está mapeada para o remetente do comando.

Códigos de razão

O código de razão aparece em 20-23 bytes dos dados de detecção. O código de razão fornece o nó com uma entrada de log específica. O campo é um número de 32-bits que é apresentado com o byte mais importante em primeiro lugar. Tabela 3 lista os códigos de razão e suas definições.

Se o código de razão não estiver listado na Tabela 3, o código fará referência a um evento específico no log de eventos que corresponde ao número de sequência da entrada de log de eventos relevante.

Tabela 3. Códigos de razão
Código de razão (decimal) Descrição
40 O recurso faz parte de um mapeamento de FlashCopy interrompido.
50 O recurso faz parte de um relacionamento do Metro Mirror ou Global Mirror e o LUN secundário no offline.
51 O recurso faz parte de um Metro Mirror ou Global Mirror e o LUN secundário é somente leitura.
60 O nó está offline.
71 O recurso não está ligado a nenhum domínio.
72 O recurso está ligado a um domínio que foi recriado.
73 Executando em um nó que foi excluído por algum motivo que não é atribuível a nenhum caminho que ficará off-line.
80 Aguarde a conclusão de reparo ou exclua o volume.
81 Aguarde até que a validação seja concluída ou exclua o volume.
82 Um volume thin-provisioned off-line que fez com que os dados fossem fixados no cache do diretório. Outros volumes thin-provisioned não podem atingir o desempenho, então eles são colocados off-line.
85 O volume que é colocado off-line porque o ponto de verificação no disco quorum falhou.
86 O comando repairvdiskcopy -medium que criou um erro de mídia virtual no local em que as cópias eram diferentes.
93 Uma matriz RAID-5 ou RAID-6 off-line que fez com que dados de gravação em andamento fossem fixados. Outras matrizes não podem atingir um bom desempenho e, portanto, são colocadas off-line.
94 Um MDisk da matriz que faz parte do volume colocado off-line porque o ponto de verificação no disco quorum falhou.
95 Esse código de razão é usado em arquivos de dump do bloco ruim do MDisk para indicar que a perda de dados foi causada por ter de ressincronizar a paridade com faixas de reconstrução ou por alguma outra razão do algoritmo do RAID devido a falhas múltiplas.
96 Um MDisk de matriz RAID-6 que faz parte do volume colocado off-line porque uma tabela de metadados interno está cheia.